#ifndef _TRYFINALLY_H_
#define _TRYFINALLY_H_
#include "python3/PythonGrammar30TreeConstants.h"
#include "ast/stmtType.h"
#include "ast/stmtType.h"
#include "ast/suiteType.h"
class IVisitor;
class TryFinally;
typedef QSharedPointer<TryFinally> TryFinallyPtr;

class TryFinally: public stmtType
{
public:
    explicit TryFinally(const StmtTypeList& body, const suiteTypePtr& finalbody, int nodeId=JJTTRYFINALLY_STMT);
    virtual ~TryFinally();
    
    
    StmtTypeList body();
    void setBody(const StmtTypeList& body);
    
    suiteTypePtr finalbody();
    void setFinalbody(const suiteTypePtr& finalbody);
    
    
    virtual QString type() const;
    virtual QString toString() const;
    virtual void accept(IVisitor* visitor, const SimpleNodePtr& node);
    virtual void traverse(IVisitor* visitor);
private:
    StmtTypeList _body;
    suiteTypePtr _finalbody;
};




#endif